<?php
/**
 * 单例模式
 *
 * 在一个脚本下创建一个类的唯一实例,它可以被重复使用。
 */
class Singleton{
	//类的唯一实例
	private static $instance;
	//类的属性,如名字
	private $name = 'Singleton';
	//防止被外界创建实例
	private function __construct(){

	}
	//防止被外界克隆
	private function __clone(){

	}
	//访问属性
	public function getName()
	{
		return $this->name;
	}
	//构建外界访问唯一实例的方法
	public static function getInstance(){
		//如果实例未创建，则创建一个实例
		if(!self::$instance instanceof Singleton){
			self::$instance = new self;
		}
		return self::$instance;
	}
}

//获取实例
$singleton = Singleton::getInstance();
//访问实例的属性
$name = $singleton->getName();

echo $name;
